home *** CD-ROM | disk | FTP | other *** search
/ Software Vault: The Gold Collection / Software Vault - The Gold Collection (American Databankers) (1993).ISO / cdr53 / 124_01.zip / TEXUMAN.TEX < prev    next >
Text File  |  1993-06-01  |  45KB  |  976 lines

  1. % defines to make life easier for the macro package writer
  2. \def\macros#1{\def\macname{#1}\def\fetchman{\input b:m#1}}
  3.  
  4. \macros{Basic}            % Which macro package are we documenting?
  5. \input a:basic            % set up the environment
  6. \ff{+nf +hl "tex USERS MANUAL\rDecember 1982"
  7. +fl "Mike Meyer\rPage \s#"}
  8. \f:9=ff12            % the fancy font fonts
  9. \def\FF{\f:9}
  10. \def\heading#1{\vskip 20pt{\bf #1}\vskip 10pt\par}
  11. \def\subhead#1{\vskip 20pt{\it #1}\vskip 10pt\par}
  12. \def\tex{{\rm T\FF E\rm X}}    % define some usefull strings
  13. \def\metafont{{\ss METAFONT}}
  14. \def\tm{{\FF TM}}
  15. \def\cr{{\FF R}}
  16. \def\pfont{{\ss pfont}}
  17. \def\describe{\lftmarg +60\indent 0\indent -60}
  18. \def\bold#1{{\bf #1 }}
  19.  
  20. \vskip 72 pt            % set up the title page
  21. \ctrline{\bf SMALL tex USERS MANUAL}
  22. \ctrline{\bf For the \macname\ Macro Package}
  23. \vskip 24 pt
  24. \ctrline{Mike Meyer}
  25. \vskip 72 pt
  26.  
  27. This users manual for the small tex text formatting system is
  28. intended for people familiar with some text formatter (not
  29. necessarily \tex) and computers in general. The reader is assumed
  30. to have used and to be familiar with the {\FF Fancy Font}
  31. typesetting system.
  32.  
  33. \vskip 200 pt
  34. \ctrline{copyright $\copyright$ 1982, Mike Meyer}
  35. \eject
  36. % now start the paper
  37. \heading{Introduction}
  38.  
  39. Small tex (`tex' is never capitalized) is a micro-computer text
  40. formatter based on Donald Knuth's \tex\tm\ computerized
  41. typesetting system. tex (see?) shares with \tex\ user-definable
  42. commands, multiple typefaces of various sizes and shapes, support
  43. for typesetting mathematics,  and the ability to group text.
  44. Unlike \tex, tex does not work with a character-definition
  45. system, like \metafont, for output. Instead, tex uses {\FF Fancy
  46. Font}\tm\ from SoftCraft for output. This package is not as
  47. powerful as \metafont, and the missing abilities are reflected in
  48. tex as missing features. Likewise, a z80 CP/M\tm\ system isn't a
  49. DEC\tm\ 10, so many nice features of \tex\ that I considered
  50. dispensable were dispensed with.
  51.  
  52. I wish to emphasize that tex is not meant for {\bf
  53. all} micro-computer text formatting purposes. It is intended
  54. specifically for formatting small documents that require more
  55. abilities than most printers supply. Specifically, it was
  56. designed to let me typeset papers for my courses in graduate
  57. mathematics - which called for characters not generally available
  58. on my printer. tex is also suitable for setting letters, etc.
  59. However, for anything longer than about 20 pages, I don't recommend
  60. it. I don't consider this an unreasonable restraint, as it takes
  61. about 4 hours to print a 20 page document in {\ss +rd 0} mode.
  62.  
  63. \heading{What Does tex Do?}
  64.  
  65. tex provides a {\it mapping} from its input to input for \pfont\ 
  66. that hopefully reflects the user's intent for the resulting
  67. document's appearence. Unfortunately, tex is {\bf dumb.}
  68.  
  69. tex only knows about {\it words} and {\it lines.}
  70. A {\it word} is anything that has whitespace on both sides {\bf in
  71. the output.} Most especially, anything printed in math mode is
  72. considered to be a single word. A {\it line} is a single line of
  73. text in the output document.
  74.  
  75. As tex maps input to output, it reads in words, one
  76. at a time, until the words won't fit on the output line it is
  77. preparing. Then tex outputs the words that will fit on
  78. the line, and starts the next line with whatever word wouldn't
  79. fit on the current line.  This is insufficent since {\it
  80. pages} are also important. Since tex ignores them, it can't do
  81. anything about widowed lines - it doesn't know that they're
  82. widowed. Likewise, you may occasionally tell tex to go to the
  83. top of a page (with the {\ss eject} command) and tex, not
  84. realizing that it is already at the top of a page, will leave a
  85. blank page behind when it obeys your command.
  86.  
  87. This behavior can be modified by magic characters in the input
  88. stream. tex considers the same characters magic that \tex\ 
  89. considers magic in its {\ss basic} package: `\\', `\%', `$\$$',
  90. `\{', and `\}'. These have the same meanings as the do in \tex,
  91. but cannot be changed as they can in \tex. They can be added to
  92. the output stream in the same manner as they are in \tex: by
  93. preceding them with a `\\' character, which effectively makes
  94. them commands.
  95.  
  96. The `\\' character is used to indicate to tex that a command
  97. follows. Commands are {\it action} words - they tell tex to do
  98. something, usually immediately.
  99.  
  100. The `\%' character signals a comment. When tex sees a `\%' in the
  101. input stream, it ignores any preceeding whitespace, all
  102. characters to the end of the line, and any whitespace following
  103. the end of the line. {\it Whitespace,} if you were wondering,
  104. consists of blanks, tabs, and new line characters - things that
  105. don't leave ink on the paper.
  106.  
  107. The $`\$'$ character indicates a change of mode - to or from one
  108. of the two math modes. $`\$''$s are used in pairs, either as:
  109. \ctrline{\ss$\$$text for math mode$\$$} or:
  110. \ctrline{\ss$\$\$$text for display mode$\$\$$} In math mode and
  111. display mode above, tex recognizes extra commands, and ignores
  112. spaces (except as needed to separate out commands).
  113.  
  114. Finally, the `\{' and `\}' characters group text and arguments to
  115. commands. When freestanding, they indicate that commands that
  116. alter global properties of the text should apply {\bf only} to
  117. the text contained in them. These commands will be noted as we
  118. encounter them. For commands that require textual arguments, `\{'
  119. and `\}' set off arguments that are longer than one character.
  120.  
  121. The following sections will discuss tex input syntax, the builtin
  122. commands for tex, and the \macname\ macro package in particular.
  123. Examples will be drawn from the input used for the manual. In
  124. particular, references to "line <number> of the input" refer to
  125. the appropriate line number in the file {\ss texuman.tex.} Also,
  126. there are occasional references to things done nearby in the
  127. text. These also indicate that you should check the appropriate
  128. input file. Therefore, if you have not printed off copies of the
  129. tex source for this manual (both {\ss texuman.tex} and
  130. {\ss\macname.tex}) you should do so now. I recommend {\ss pip
  131. prn:=} to get numbered listings.
  132.  
  133. \heading{What the Magic Characters Do}
  134.  
  135. As previously mentioned, there are several magic characters that
  136. change the way tex behaves. These are `\\', `\%', `$\$$', and the
  137. curly braces `\{' and `\}'. This section discusses their
  138. behavior and use in some detail.
  139.  
  140. \subhead{The Command Character and Command Formats}
  141.  
  142. The magic character `\\' introduces a tex command. Commands to
  143. tex have several formats. The basic format for all commands is a
  144. `\\' character, followed by the name of the command, possibly
  145. followed by arguments. In any of the formats, any following
  146. whitespace is ignored by tex. Therefore, if you want the output
  147. from a command followed by a space, you should probably issue a
  148. `hard space' command. This is usually {\ss`\\\ '.} If you are not
  149. sure, you can always force tex to output a space by using the
  150. string {\ss \{\}} followed by a space.
  151.  
  152. Command names come in two forms. The first consists of a single
  153. nonalphabetic character. Examples would be the commands used to
  154. get magic characters into the text. Around line 190 in the input
  155. is a good example of this type of thing. The second form consists
  156. of a string of alphabetic characters terminated by some
  157. nonalphabetic character. Usually, this nonalphabetic character is
  158. a blank. In this form, the case of the first character is
  159. significant, but the case of any following characters is ignored.
  160. For example, {\ss \\sigma, \\sIGMA,} and {\ss \\sIGma,} are all
  161. the same command, and all different from {\ss \\Sigma.}
  162.  
  163. Commands usually have either one or zero arguments. Examples of
  164. the first case include commands to insert character strings into
  165. the text stream, as in the {\ss tex} command used on line 26 of
  166. the manual, in the abstract. The other use for commands without
  167. arguments is to change some global parameter of tex, say the
  168. typeface being used to print characters. The {\ss FF} command on
  169. line 12 of the input is a good example of that.
  170.  
  171. If a command has a single argument, this command is known as a
  172. {\it token.} Tokens come in two forms. The general case is that
  173. they are a sequence of text between `\{' and `\}.' In such cases,
  174. {\bf the argument is limited to 1024 characters.} An example of
  175. this form is the {\ss macros} command on line 4 of the document.
  176. The argument to this command is the string {\ss \macname.} The
  177. other form for a token is a single, non-whitespace character.
  178. Generally, these are used after the non-alphabetic commands, as
  179. in {\ss \\+x,} which would be the command named {\ss +} with an
  180. argument of {\ss x.}
  181.  
  182. Finally, there are the commands which have a strange argument
  183. syntax. These either require more information, or are done in
  184. some specific manner to be compatible with \tex. These commands
  185. are {\ss def, vskip, hskip, f:, input} and {\ss math:.}
  186.  
  187. \subhead{Comments}
  188.  
  189. Comments in tex are introduced by the character `\%', and
  190. continue from the \%\ to the end of input text line. When a bare
  191. \%\ is seen, tex will ignore any white space preceding the \%,
  192. any text between the \%\ and the end of the line, and any
  193. whitespace following the comment. For examples of comments, see
  194. the first 20 or so lines of the input for this document. To get a
  195. \%\ into the output text, use the {\ss \\\%} command.
  196.  
  197. \subhead{The Math Modes}
  198.  
  199. \tex\ was originally designed for typesetting text with a high
  200. content of mathematics. tex has the same intent, and uses the
  201. \tex\ techniques for specifying equations. Specifically, an
  202. equation is introduced by either `$\$$' or `$\$\$$'. A single
  203. $\$$ introduces an inline equation, like $a=3x+b.$ The
  204. double $\$$, $\$\$$, introduces an equation centered on
  205. a line by itself, as: $$a=3x+b$$
  206.  
  207. While in math mode, tex changes to an italic-like font for normal
  208. characters. Any whitespace in an equation in math mode is
  209. ignored, except for the space command `\\\ '. The advantage of
  210. math mode is that a {\bf large} number of commands become
  211. available to output symbols not normally available.  A complete
  212. list of these commands can be found in the appendix. Those of
  213. general interest are printed here, as pairs of {\it name, graphic
  214. representation}:{\fill 0\ss{}
  215.  
  216. \lft{$\$$, $\$$}    \ctr{$\#$, $\#$}    \rt{dag, $\dag$}
  217. \lft{ddag, $\ddag$}    \ctr{ldots, $\ldots$}    \rt{ldotss, $\ldotss$}
  218. \lft{circ, $\circ$}    \ctr{bullet, $\bullet$}    \rt{copyright, $\copyright$}
  219. \lft{section, $\section$}}
  220.  
  221. In addition, the two math mode commands {\ss +, -} generate
  222. superscripts and subscripts, and are occasionally useful outside
  223. of equations.
  224.  
  225. As in \tex, there are lots of techniques for making the equations
  226. from tex look better than just typing commands in math mode.
  227. These will be discused in the next version of this manual.
  228.  
  229. \subhead{Nesting Text and Tokens}
  230.  
  231. The characters `\{' and `\}' are used in tex to group arguments
  232. to commands, and to indicate {\it environment nesting.} Before I
  233. can discuss the brace characters, I need to discuss environments,
  234. and the nesting of environments.
  235.  
  236. It must be understand that the text formatting done by tex does
  237. not take place in a vacuum. The output of tex is governed by
  238. several knobs of tex that the user can set. These knobs comprise
  239. such things as the current typeface, the margins, etc. The
  240. current {\it environment} is the current setting of all of tex's
  241. knobs.
  242.  
  243. The {\it nesting} of one environment inside of another implies
  244. that the environment is changed temporarily for a piece of text,
  245. and after the text is processed, the environment is restored to
  246. its previous state. This concept will be familiar to anyone wh
  247. has worked with an ALGOL-like language, and indeed works in a
  248. similar manner. You can nest an environment inside of an
  249. environment that is already nested. In fact, you can nest
  250. environments in this manner arbitrarily deep (until you run out
  251. of stack space, anyway). This facility is very powerful, and
  252. makes many things easy that would be difficult in a text
  253. formatter such as roff.
  254.  
  255. In tex, environments are nested with the pair of characters `\{'
  256. and `\}.'  When not used to delimit arguments, the character `\{'
  257. indicates that a new level of environment nesting is being
  258. entered. Commands that change the current formatting environment
  259. may be issued, and will affect only the text enclosed between the
  260. open and close braces. To see how this nesting works, consider the
  261. subheadings in the next section. These nest an environment using
  262. an italic typeface for the main text of the subheading, and nest
  263. another environment inside of that one to use a sans serif
  264. typeface for the command names.
  265.  
  266. {\lftmarg +20\indent 0\indent -20\sc The true value of this
  267. technique may be seen in this paragraph, which change the margin
  268. and indentation to become an outdented paragraph, and changes the
  269. typeface to script. Then, when the paragraph is finished, the
  270. environment closed, and things will return to normal, regardless
  271. of what `normal' was before.}
  272.  
  273. Likewise, environment nesting can be used in letters. For
  274. example, a typical heading might look something like:
  275.  
  276. {\fill 0{\lftmarg 450{}
  277. P.O. Box 1749
  278. Norman, OK 73070
  279. Jan. 20, 1982}
  280.  
  281. Hank Harlison
  282. Dr. Mobs Urinal
  283. Somewhere, CA xyzzy
  284. }
  285.  
  286.  
  287. Find the commands in the source file that were used to produce
  288. this text to see how easy this is for tex, and then compare it to
  289. what would have to be done in a roff-like formatter.
  290.  
  291. The other use for the brace characters is to delimit an argument
  292. to a command. This is discussed fully in the subsection on
  293. command characters and formats. The important thing to note at
  294. this point is that the braces used to delimit an argument {\bf do
  295. not cause environment nesting}. In some cases, the command can be
  296. built to cause this to happen.  None of tex's builtin commands do
  297. this.
  298.  
  299. \heading{The Builtin Commands to tex}
  300.  
  301. Following is a list of the commands that tex will always know
  302. about, no matter what macro package you are using. This list is
  303. not a complete list of all the commands a normal tex user will use,
  304. but merely covers those that are useful for setting
  305. up a document. There are other builtin commands that will
  306. probably be useful if you are building or modifying a macro
  307. package. See the Appendices for a complete list of builtin
  308. commands. The majority of the commands normally used will
  309. probably be defined in a macro package. See the following
  310. section for a list of these commands.
  311.  
  312. \subhead{The {\ss def} Command}
  313.  
  314. The single most useful builtin command is {\ss def.} It allows
  315. the user to define new commands that look, and act, just like
  316. builtin tex commands. Defined commands can have either alphabetic
  317. or non-alphabetic names, and can have either of the two standard
  318. argument forms - none, or a single token.
  319.  
  320. Examples of the {\ss def} command can be found on lines 9 through
  321. 15. Only lines 10 and 11 define commands with arguments. The
  322. other lines all demonstrate the standard, non-argument {\ss def}
  323. command format:
  324. \ctrline{\ss \\def\\name\{text of define\}}
  325.  
  326. This string in the input text causes the command {\ss name} to be
  327. defined, such that every time the string {\ss \\name} appears in
  328. the input stream, {\ss text of define} will appear in the output
  329. stream. For example, the defintion for {\ss tex}  appears on
  330. line 13. This line defines the {\ss tex} command such that
  331. every time the string {\ss \\tex} appears in the input, the
  332. string {\ss \{\\rm T\\FF E\\rm X\}} will be fed to tex, causing
  333. the symbol \tex\ to be printed on the page.
  334.  
  335. The second form of the {\ss def} command is shown on lines 10 and
  336. 11 - a {\ss def} command with an argument. The general form of
  337. this is:
  338. \ctrline{\\def\\name#1\{text with possible #1 expansion\}}
  339.  
  340. This form of the {\ss def} command works the same as the
  341. argumentless form of {\ss def,} except that, when the text for
  342. the definition is being used by tex, any occurence of the string
  343. {\ss #1} will be replaced by the argument. For example the {\ss
  344. heading} command, which is defined on line 10, when used on line
  345. 33 will expand to the string {\ss\{\\vskip 20pt\{\\bf
  346. Introduction\}\\vskip 10pt\\par\}.}
  347.  
  348. A particularly good example of the power of the {\ss def} with a
  349. single argument can be found on line 2 of the input. This line
  350. defines the {\ss macros} command, which has one argument.
  351. Immediately below this, on line 4, the {\ss macros} command is
  352. used, with the argument of {\ss \macname.} This causes the text
  353. of the {\ss macros} command to be read by tex, which defines two
  354. more commands - the {\ss macname} command, and the {\ss fetchman}
  355. command. The {\ss macname} command just puts the argument to the
  356. {\ss macros} command in the input stream. The {\ss macname}
  357. command is used in the preceding sentence to get the argument of
  358. the {\ss macros} command on line 4 into the text, and on line 19
  359. to get the name of the macro package this manual documents into
  360. the subtitle. The {\ss fetchman} command tells tex to input the
  361. parts of the manual that are specific to some macro package, and
  362. is used to do so later on in this document. Note that the {\ss
  363. macros} command demonstrates that you can use the {\ss #1}
  364. sequence in a definition expansion as often as needed. It is left
  365. as an exercise to the reader to determine if a definition can
  366. define commands with arguments, and how this would be done if it
  367. can be done.
  368.  
  369. \subhead{Positioning Commands - {\ss vskip, hskip, ctr, rt, lft, eject}}
  370.  
  371. There are five commands built in to tex for positioning text on
  372. the page. These are {\ss hskip, vskip, ctr, rt, lft} and {\ss
  373. eject.} The only two that will generally be used are {\ss vskip}
  374. and {\ss hskip.} These both have the same format: \ctrline{\ss
  375. \\hskip xx pt} or \ctrline{\ss \\vskip yy pt}
  376.  
  377. {\ss hskip} causes a {\bf h}orizontal {\bf skip} in the output
  378. text of xx {\it pts.} A {\it pt} (for hskip) is one 120$\+{th}$ of
  379. an inch. For example, the following text is produced by the
  380. input sequence {\ss |\\hskip 50 pt|}:|\hskip 50 pt|
  381.  
  382. {\ss vksip} causes a {\bf v}ertical {\bf skip} in the output text
  383. of yy pts. For {\ss vskip,} a pt is {\bf one 72$\+{nd}$} of an
  384. inch. {\bf NOTE THE \underline{DIFFERENCE}} between the unit for
  385. {\ss vskip} and {\ss hskip.} This is unfortunate, but it is also
  386. unavoidable, being imposed by {\FF Fancy Font}. An example of the
  387. use of {\ss vskip} is in the definition for {\ss heading} and
  388. {\ss subheading,} where {\ss vskip} is used to get appropriate
  389. amounts of vertical spacing around the headings.
  390.  
  391. In both {\ss vskip} and {\ss hskip,} the string {\ss pt} is {\bf
  392. required.} If it is left off, tex will complain, and eat the
  393. character following the {\ss v[h]skip} command.
  394.  
  395. The {\ss eject} command is used to get to a new page. An example
  396. of this is seen on line 31, where it is used to get to a new page
  397. to start the manual after the title page has been printed. As has
  398. been pointed out before, tex does not know about pages, so {\ss
  399. eject} issued at the top of a page will cause a clean sheet of
  400. paper to be printed. For this reason, it is inadvisable to use
  401. lots of ejects or, if you do use lots of ejects, to number
  402. your pages.
  403.  
  404. The three commands {\ss lft, rt} and {\ss ctr} are relatively
  405. dangerous, and should only be used by experienced tex users:
  406. those who know what the commands actually do. In general, the only
  407. place they will be used is in producing `tables,' or the closest
  408. approximation that tex can make to tables. For an example of this,
  409. see the section around line 200 in the input document on math
  410. mode.
  411.  
  412. The only really useful feature any of these offer is centering
  413. lines of text. Check the definitions provided by the macro
  414. package you are using for a specific centering command.
  415.  
  416. \subhead{Fill and Nofill}
  417.  
  418. One of the nonstandard form commands is the {\ss fill} command.
  419. Fill affects the behavior of tex in a major way. The general form
  420. is {\ss \\fill x,} where x is either zero or one. If x is one,
  421. then tex behaves as previously described, treating newline
  422. characters as spaces, and packing as many words per line as
  423. possible. If x is zero, then tex {\bf stops doing word filling.}
  424. This means that every newline character in the input causes one
  425. newline in the output. Of course, if a line would be to long to
  426. fit on the page, tex will break it if you are not in fill mode.
  427. Additionally, tex does not justify the right margin when in it is
  428. not in fill mode.
  429.  
  430. {\fill 0
  431. For example, this text is not
  432. filled in. You can see the difference
  433. it makes in the output.}
  434.  
  435. {\ss fill} is useful for such things as addresses on letters,
  436. tables, etc. Note that fill is one of the global formatting
  437. parameters for tex, so it is restored to its old value when
  438. leaving a nested environment. The tables in the discussion of
  439. math mode demonstrate this.
  440.  
  441. \subhead{Paragraph Commands - {\ss par, indent, lftmarg}}
  442.  
  443. In general, tex does not know about paragraphs. However, the
  444. three commands {\ss indent, lftmarg} and {\ss par} affect the shape
  445. of the document by affecting the way paragraphs are laid out on
  446. the page.\par The simplest of these is {\ss par.} {\ss par} is
  447. causes tex to start a new paragraph {\bf immediately.} For
  448. example, this paragraph was started with a {\ss par} command in
  449. the input stream. Note that if you are in fill mode, two
  450. consecutive newline characters are synonymous with the {\ss par}
  451. command. This is usually preferable, since most text editors that
  452. know about paragraphs will recognize that sequence for a
  453. paragraph. Additionally, it visually breaks out paragraphs in the
  454. input.
  455.  
  456. {\ss lftmarg} and {\ss indent} are used to change the shape of a
  457. paragraph. {\ss lftmarg} is used to set the left margin of the page,
  458. and {\indent} is used to set the amount of paragraph indentation.
  459. The form for both {\ss lftmarg} and {\ss indent} is the same:
  460. \ctrline{\ss \\lftmarg sxx} or \ctrline{\ss \\indent sxx} In these
  461. forms, the {\ss xx} is some number of pts as defined for {\ss hskip},
  462. one 120$\+{th}$ of an inch. The {\ss s} in the argument is used to
  463. allow finer control. If it is a blank, the value of {\ss lftmarg} or
  464. {\indent} is set to the numeric value of xx. If s is a `+' (or
  465. `-'), then the value of xx is added (or subtracted) from the
  466. current value of {\ss lftmarg} or {\ss indent.}
  467.  
  468. Since both {\ss lftmarg} and {\ss indent} are part of texs
  469. formatting environment, these values will nest with curly braces,
  470. so some rather nice effects can be achieved. For example, a
  471. quotation can be done by setting up a block of text in curly
  472. braces that start with {\ss \\lftmarg +20.} This will indent the
  473. paragraph(s) in the quotation by 1/6$\+{th}$ of an inch.
  474. Similarly, outdented paragraphs can be set up by changing the
  475. left margin to an appropriate value, then setting indent to 0,
  476. and finally subtracting whatever you deem appropriate from
  477. indent. See the appendices for examples of this.
  478.  
  479. \subhead{Miscellaneous Commands}
  480.  
  481. Finally, there are four commands varying in usefulness from
  482. considerable to nearly none. These don't fit in any of the above
  483. sections, as each is unique.
  484.  
  485. The most useful of these three commands by far is the {\ss input}
  486. command. You will use it in almost every document you use tex on,
  487. generally to fetch the macro package you need for that document.
  488. The syntax of the {\ss input} command is: \ctrline{\\input filename}
  489.  
  490. This causes tex to go look for the file {\ss filename.tex}, and
  491. start reading input from that file. This input is inserted
  492. directly into the stream, in the middle of the word if that's where
  493. the {\ss input} command occurred. Inputting text via the input
  494. command is {\bf not} like nesting text inside a pair of curly
  495. braces - any changes made to the global environment in the input
  496. file will affect text following the {\ss input} command. For
  497. examples, see lines 2 and 5 in the input text.
  498.  
  499. The second command is the {\ss underline} command. This command
  500. has a single token as an argument, as in {\ss
  501. \\underline\{text\}.} This will cause {\ss text} to be
  502. underscored. {\ss underline} obeys all the constraints placed on
  503. normal, one-argument commands.
  504.  
  505. The third command is the {\ss ff} command. This command passes a
  506. single argument to \pfont\ when it is invoked by tex. Lines 6 and
  507. 7 in the input show how I used this to put headers and footers on
  508. the manual. Note that only the last occurrence of this command in
  509. the text is actually used.
  510.  
  511. Finally, there is the {\ss f:} command. This command is used to
  512. declare a {\FF Fancy Font} font file to be associated with a font
  513. number, and to change to that font during the input stream.
  514. Normally, there are only two font numbers you can use, 8 and 9.
  515. The syntax to associate a font file with font number 8 is: {\ss
  516. \\f:8=file}. To cause a change to font number 8, the command {\ss
  517. \\f:8} is issued. Normally, you won't use this version of the
  518. command, as you (or whoever wrote the macro package you are
  519. using) will have defined a command to change fonts for you. Lines
  520. 8 and 9 in the input file show font 9 being associated with the
  521. file ff12.fon, and the the command {\ss FF} being defined to
  522. change to that font. From then on, when I want to use that font
  523. (like I did in this paragraph), I issue the {\ss FF} command.
  524.  
  525. \heading{Making use of the \macname\ Macro Package}
  526.  
  527. \fetchman
  528.  
  529. \heading{Caveats}
  530.  
  531. This manual is not the last word on using tex. It is meant to be
  532. enough of an introduction to let new users start with tex, and
  533. get some work done. It does not document all the features and
  534. behavior of tex: the source code does that. If you don't have the
  535. source, somebody is distributing copies of tex in violation of
  536. the release agreement. Get in contact with me in that case.
  537.  
  538. If you have problems, or need help with tex, get in contact with
  539. me. The appropriate addresses are currently:
  540.  
  541. {\fill 0
  542. U.S. Post Offal:{\lftmarg +50
  543. Mike Meyer
  544. P.O. Box 1749
  545. Norman, OK 73070}
  546.  
  547. Bell Telephone:{\lftmarg +50
  548. 405/360-2508}
  549.  
  550. ARPANet:{\lftmarg +50
  551. mwm@okc-unix}
  552.  
  553. UUCPNet:{\lftmarg +50
  554. decvax!duke!uok!mwm}
  555.  
  556. CNet:{\lftmarg +50
  557. The Oklahoma Cnode - Ishtar: 405/329-1373}}
  558.  
  559.  
  560. \heading{Appendix A}
  561.  
  562. This appendix is the most important single part of tex users
  563. manual.  It lists all the error messages that tex issues. The
  564. format of an error message is {\ss tex: text of error message.}
  565. The following list contains the text of the error message,
  566. followed by comments about the probable cause and possible fixes.
  567.  
  568. {\describe
  569.  
  570. \bold{Invalid file name:} You told tex to format a file with a
  571. name that is longer than is valid for the operating system. File
  572. names used with the {\ss input} command cannot contain `.'
  573. character. If you used a `.' in such a file name, the {\ss
  574. Invalid file name} error message can be issued. In either case,
  575. check the filename on the command line, or in the appropriate
  576. {\ss input} command.
  577.  
  578. \bold{Can't open file:} tex couldn't find the input file. Check
  579. the spelling of the filename on the command line or in the
  580. appropriate {\ss input} command.
  581.  
  582. \bold{Can't create file:} tex couldn't create the output file.
  583. Possibly your disk is full.
  584.  
  585. \bold{Missing right brace in file:} There is a missing right
  586. brace in the named file. Verify that every open brace has a
  587. matching close brace.
  588.  
  589. \bold{Document completed in math mode} tex found the end of the
  590. file while it was in math mode. You undoubtedly forgot to put the
  591. final $\$$'s on math mode or display mode text. Use the {\FF Fancy
  592. Font} {\ss +sd} mode to find where tex stops outputting spaces.
  593. This is probably where the missing $\$$ belongs.
  594.  
  595. \bold{Negative left margin, left margin set to 0} You tried to
  596. change the left margin to a negative value. It was set to zero.
  597. You probably tried a {\ss lftmarg} command with a decrement
  598. argument that was larger than the current left margin.
  599.  
  600. \bold{Indent to small, set to:} You tried to change the indent to
  601. a value that, when added to the left margin, created a negative
  602. offset. tex set the indent to the negative of the left margin,
  603. which is probably close to what you wanted (pray, pray). Look for
  604. sequences like {\ss \\indent 0\\indent -x} where x is larger than
  605. the value of the left margin.
  606.  
  607. \bold{Can't create temp file} tex couldn't create the file it
  608. uses for passing parameters to \pfont. Possibly your disk is
  609. full.
  610.  
  611. \bold{Write error on file:} The write to the file tex uses for
  612. passing parameters to \pfont\ failed. Possibly your disk is
  613. full.
  614.  
  615. \bold{Can't execute pfont} tex couldn't find the \pfont\ command.
  616. Check to see that it is on the correct disk.
  617.  
  618. \bold{Out of buffer space} tex ran out of buffer space for
  619. input. This is highly unlikely. The only thing I can think of
  620. that would cause it is having the margins set to allow a large
  621. number of characters per line (either wide margins or small
  622. characters, or both), and being in math mode.
  623.  
  624. \bold{Internal error in mathmode: inchar =} tex found itself in
  625. display mode while not in math mode. Write down the entire output
  626. line and get a hacker to look at your input and the version of
  627. tex you are running.
  628.  
  629. \bold{Leaving display mode with $`\$'$} You closed display mode
  630. text with a single `$\$$.' Either you closed display mode
  631. incorrectly, or you forgot to close some math mode text. In the
  632. latter case, you should also get {\ss Math only command$\ldotss$}
  633. messages.
  634.  
  635. \bold{Leaving math mode with a $`\$\$'$} This is the converse of
  636. the previous error message. The reasons and fixes are the same.
  637.  
  638. \bold{Domath compiler error!} Something that shouldn't be
  639. possible happened. Write down the error message, and get a hacker
  640. to look at the your tex input, the source for the version of tex
  641. you are running, {\bf and} the version of the compiler that was
  642. used to compile it.
  643.  
  644. \bold{Illegal command:} tex found a command that it didn't
  645. recognize. You probably made a typo in the command name. Check
  646. your spelling.
  647.  
  648. \bold{Illegal font command:} There is a command that looks like
  649. a font command ({\ss \\f} followed by a non-alphabetic character)
  650. that is not a valid font command. Normally, font commands are set
  651. up in the macro package, so this shouldn't occur for the normal
  652. user. If it does, check the macro package you are using.
  653.  
  654. \bold{Illegal font character:} A font or math command occured
  655. in the text that changed to an illegal font. See the previous
  656. error meesage for discussion.
  657.  
  658. \bold{Can't open font file:} Somebody is trying to use a font
  659. file that doesn't exist. Once more, check the macro package you
  660. are using. Also verify that all the font files it uses are where
  661. it expects them.
  662.  
  663. \bold{Bad font file:} The named font file contains data that tex
  664. doesn't understand. Possibly it or tex is corrupt. Get a fresh
  665. copy of the files. If that fails, verify that the version of tex
  666. you are using is compatible with the \pfont\ you are using.
  667.  
  668. \bold{Invalid character:} You tried to use the builtin {\ss
  669. char} to print a non-ascii character. If you don't use the {\ss
  670. char} command, check the macro package you are using.
  671.  
  672. \bold{Math only command issued outside math mode} The math mode
  673. commands complain about this if they are used outside of math
  674. mode. In most cases, the command will do what you wanted, but not
  675. fixing the cause of the problem is bad form. If you get many of
  676. these, you probably forgot to close some math mode text properly.
  677.  
  678. \bold{Bad define character.} A {\ss def} command was encountered
  679. that didn't end in a `\\'. Find the appropriate define, and fix it.
  680.  
  681. \bold{Define too long:} You tried to define a command whose name
  682. was longer than tex can accept. Change the name of the defined
  683. command.
  684.  
  685. \bold{Command too long:} You issued a command that was too long.
  686. This is an illegal command, as you couldn't have defined it in
  687. the first place. Find the occurence of the substring that tex
  688. printed, and change it to a legal command.
  689.  
  690. \bold{Bad define:} The name of a defined command was not
  691. followed by either a `\{' or a `$\#.$' Find the appropriate {\ss
  692. def} command and fix it.
  693.  
  694. \bold{bad define parameter.} You tried to use a parameter number
  695. other than 1 in a define. Currently, tex only allows one
  696. parameter on a command. Change the appropriate define.
  697.  
  698. \bold{Too many defines:} The number of allowable defines in tex
  699. has been exceeded. The named command was not defined. The fix is
  700. either to use fewer defines, or reconfigure tex to allow more
  701. defines.
  702.  
  703. \bold{Out of string space} You have run out of memory. Either
  704. get more memory, decrease the size of defined commands, or
  705. reconfigure tex.
  706.  
  707. \bold{Illegal command \\math} The builtin command {\ss math} has
  708. been misused. Change the usage to correspond to {\ss \\math=x,}
  709. where {\ss x} is an appropriate font number.
  710.  
  711. \bold{Need `pt' to follow hskip number} You left off the {\ss
  712. pt} from an hskip command. tex will eat the charcter following
  713. the misformed hskip command. Fix the offending hskip.
  714.  
  715. \bold{Need `pt' to follow vksip number} Identical to the
  716. previous error, except that it applies to vskip instead of hskip.
  717.  
  718. \bold{Input token too long} An argument to a command exceeded the
  719. maximaum length. Check commands with long arguments, and break
  720. the offending command up into two separate commands.
  721.  
  722. }        % end of the appendix A
  723.  
  724. \heading{Appendix B}
  725.  
  726. This appendix describes the builtin commands of tex. For each
  727. command, its form and usage is is discussed, as well as its
  728. exact behavior in terms of the \pfont\ commands that it issues.
  729. This appendix will probably be of use only to those building
  730. macro packages. Everybody should be aware of the names of the all
  731. the builtin commands, as you cannot use these names for defined
  732. commands.
  733.  
  734. {\describe
  735.  
  736. \bold{f} The {\ss f} command is used to change fonts, or to
  737. associate a font file with a font number. The font numbers
  738. currently valid are 0 through 9, and attempts to use any others
  739. will (hopefully) result in error messages. The form used to
  740. associate a font file with a font number is {\ss \\f:x=name,}
  741. which associates font number {\ss x} with font file {\ss
  742. name.fon.} This causes no \pfont\ commands to be issued, but does
  743. cause tex to load the named font file. The form used to change to
  744. a font number is {\ss \\f:x}, which changes to font {\ss x.} This
  745. causes the \pfont\ command {\ss \\fx} to be issued.
  746.  
  747. \bold{math} The {\ss math} command is used to tell tex which font
  748. is to be use for math mode. The format is {\ss \\math:x,}  which
  749. causes font number {\ss x} to be used for math mode text.
  750.  
  751. \bold{def} This defines a command, and its use is discussed in
  752. the main body of the manual. It causes no \pfont\ commands to be
  753. issued.
  754.  
  755. \bold{fill} The {\ss fill} is used to turn fill mode on and off.
  756. Its use is discussed in the main body of the text. The current
  757. fill mode is part of the tex environment. If used to turn fill
  758. and justification on, a {\ss \\j} command is issued to \pfont.
  759. Otherwise, a {\ss \\k} command is issued to \pfont.
  760.  
  761. \bold{lftmarg} This command is used to change the left margin. Its
  762. use is discussed in the main body of the text. The left margin is
  763. part of the tex environment. This command causes no \pfont\ commands to be
  764. issued.
  765.  
  766. \bold{indent} The {\ss indent} command is used to change the
  767. paragraph indentation tex is using. This indentation is part of
  768. the tex environment. The use of the {\ss indent} command is
  769. discussed in the main body of the manual. It causes no \pfont\ 
  770. commands to be issued.
  771.  
  772. \bold{rtmarg} The {\ss right} command is analogous to the {\ss
  773. lftmarg} command. It is currently disabled.
  774.  
  775. \bold{mathonly} This command checks to see that tex is currently
  776. in math mode, and issues an error message if not. The correct
  777. usage is merely {\ss \\mathmode.} This command should be used by
  778. builders of macro packages to flag commands that should only be
  779. issued in math mode. No \pfont\ commands are issued.
  780.  
  781. \bold{par} The {\ss par} command forces a paragraph output. It
  782. could probably be made a define, but I don't see any point in it
  783. yet. Its usage is discussed in the main body of the manual. No
  784. \pfont\ commands are issued.
  785.  
  786. \bold{eject} The {\ss eject} command is used to force a new page.
  787. The string  {\ss \\b<newline>\\p} is issued to pfont. Therefore,
  788. the trailing line will not be justified, and the next line will
  789. start on a new page.
  790.  
  791. \bold{ctr} This command is used to center text. The form is {\ss
  792. \\ctr\{text\}.} The \pfont\ command {\ss \\c} is issued, followed
  793. by the text of the argument. Note that \pfont\ will center any
  794. text that follows the {\ss ctr} command, unless other commands
  795. are issued.
  796.  
  797. \bold{rt} The {\ss rt} command is used to force text to the right
  798. side of the line. Usage is {\ss \\rt\{text\}.} The pfont command
  799. {\ss \\r} is isued, followed by the text of the argument,
  800. followed by a newline character.
  801.  
  802. \bold{lft} The {\ss lft} command is used to force text to the
  803. left side of the line. Usage is {\ss \\lft\{text\}.} The pfont
  804. command {\ss \\b} is issued, followed by the text of the
  805. argument. Hence, the total effect of the {\ss lft} command is to
  806. turn off justification for the line it's issued on.
  807.  
  808. \bold{vskip} This command is used to force a vertical skip down
  809. the page. Usage is discussed in the main body of the manual. The
  810. \pfont\ command {\ss \\b} is issued, followed by a {\ss \\v}
  811. command to cause the skip. Thus, the line the {\ss vskip} is
  812. issued on will not be justified, and the next line will occur the
  813. appropriate number of points down the page.
  814.  
  815. \bold{hskip} The {\ss hskip command} is used to skip horizontally
  816. across the page. Usage is discussed in the main body of the
  817. manual. The \pfont\ command {\ss \\i} is issued to cause the skip.
  818.  
  819. \bold{char} This command is used to force some non-printable
  820. ascii character into the output stream. Usage is {\ss \\char
  821. xxx}. The ascii character corresponding to the decimal value of
  822. {\ss xxx} will be inserted into the output stream. Normally, the
  823. appropriate ascii character is output. However, there are a
  824. couple of cases where the \pfont\ command {\ss \\d} is used.
  825.  
  826. \bold{underline} The {\ss underline} command is used to underline
  827. text in the output document. Usage is {\ss \\underline\{text\}.}
  828. The output to pfont is {\ss \\utext of argument\\u.}
  829.  
  830. \bold{input} The input command is used to fetch text from another
  831. file. Usage is discussed in the main body of the manual. No
  832. \pfont\ commands are generated.
  833.  
  834. \bold{ff} This command is used to pass page formatting
  835. information to \pfont. Usage is discussed in the main body of the
  836. manual. No pfont commands are generated, but its argument is
  837. passed to pfont on the command line.
  838.  
  839. }        % end of Appendix B
  840.  
  841. \heading{Appendix C}
  842.  
  843. This appendix  describes the commands available in math mode.
  844. These commands should be independent of the macro package you are
  845. using. The command set is broken up into pieces. The description
  846. of each piece of the command set consists of a brief discussion
  847. of that particular piece, followed by a table that has each
  848. command listed beside the resulting graphics character.
  849.  
  850. The first piece of the command set is the Greek alphabet. The
  851. upper case Greek characters that are not also part of the English
  852. alphabet are included, as:{\fill 0\ss{}
  853.  
  854. \lft{Gamma, $\Gamma$}    \ctr{Delta, $\Delta$}    \rt{Xi, $\Xi$}
  855. \lft{Theta, $\Theta$}    \ctr{Lambda, $\Lambda$}    \rt{Pi, $\Pi$}
  856. \lft{Phi, $\Phi$}    \ctr{Sigma, $\Sigma$}    \rt{Upsilon, $\Upsilon$}
  857. \lft{Omega, $\Omega$}    \ctr{Psi, $\Psi$}}
  858.  
  859. The entire lower case Greek alphabet is available, including both
  860. forms of theta and and phi. Note that the {\bf case of the first
  861. character} in the command is significant, and that the case of
  862. the first character is the only thing that differentiates the
  863. {\ss gamma ($\gamma$)} from the {\ss Gamma ($\Gamma$)} command.
  864. The commands for the lower case Greek characters are:{\fill 0
  865. \ss{}
  866.  
  867. \lft{alpha, $\alpha$}    \ctr{beta, $\beta$}    \rt{gamma, $\gamma$}
  868. \lft{delta, $\delta$}    \ctr{epsilon, $\epsilon$}\rt{xi, $\xi$}
  869. \lft{theta, $\theta$}    \ctr{eta, $\eta$}    \rt{iota, $\iota$}
  870. \lft{kappa, $\kappa$}    \ctr{lambda, $\lambda$}    \rt{mu, $\mu$}
  871. \lft{nu, $\nu$}        \ctr{pi, $\pi$}        \rt{phi, $\phi$}
  872. \lft{rho, $\rho$}    \ctr{sigma, $\sigma$}    \rt{tau, $\tau$}
  873. \lft{upsilon, $\upsilon$}\ctr{omega, $\omega$}    \rt{chi, $\chi$}
  874. \lft{psi, $\psi$}    \ctr{zeta, $\zeta$}    \rt{vartheta, $\vartheta$}
  875. \lft{varphi, $\varphi$}}
  876.  
  877. The upper case script characters are also available in math mode.
  878. These characters are from the standard {\FF Fancy Font} script
  879. character set, which is probably available with the macro package
  880. you are using. They are provided in math mode as a convenience
  881. for the user. They are:{\fill 0\ss{}
  882.  
  883. \lft{Ascr, $\Ascr$}    \ctr{Bscr, $\Bscr$}    \rt{Cscr, $\Cscr$}
  884. \lft{Dscr, $\Dscr$}    \ctr{Escr, $\Escr$}    \rt{Fscr, $\Fscr$}
  885. \lft{Gscr, $\Gscr$}    \ctr{Hscr, $\Hscr$}    \rt{Iscr, $\Iscr$}
  886. \lft{Jscr, $\Jscr$}    \ctr{Kscr, $\Kscr$}    \rt{Lscr, $\Lscr$}
  887. \lft{Mscr, $\Mscr$}    \ctr{Nscr, $\Nscr$}    \rt{Oscr, $\Oscr$}
  888. \lft{Pscr, $\Pscr$}    \ctr{Qscr, $\Qscr$}    \rt{Rscr, $\Rscr$}
  889. \lft{Sscr, $\Sscr$}    \ctr{Tscr, $\Tscr$}    \rt{Uscr, $\Uscr$}
  890. \lft{Vscr, $\Vscr$}    \ctr{Wscr, $\Wscr$}    \rt{Xscr, $\Xscr$}
  891. \lft{Yscr, $\Yscr$}    \ctr{Zscr, $\Zscr$}}
  892.  
  893. There is a large selection of binary relations. These are:{\fill 0\ss{}
  894.  
  895. \lft{normal, $\normal$}    \ctr{noteq, $\noteq$}    \rt{eqv, $\eqv$}
  896. \lft{supset, $\supset$}    \ctr{subset, $\subset$}    \rt{in, $\in$}
  897. \lft{notin, $\notin$}    \ctr{perp, $\perp$}    \rt{le, $\le$}
  898. \lft{ge, $\ge$}        \ctr{onlyif, $\onlyif$}    \rt{implies, $\implies$}
  899. \lft{if, $\if$}        \ctr{iff, $\iff$}    \rt{mapsto, $\mapsto$}
  900. \lft{lsls, $\lsls$}    \ctr{grgr, $\grgr$}    \rt{simeq, $\simeq$}
  901. \lft{approx, $\approx$}    \ctr{doteq, $\doteq$}}
  902.  
  903. There is also a variety of binary operators available in tex. These
  904. are:{\fill 0\ss{}
  905.  
  906. \lft{pm, $\pm$}        \ctr{mp, $\mp$}        \rt{times, $\times$}
  907. \lft{div, $\div$}    \ctr{odot, $\odot$}    \rt{oplus, $\oplus$}
  908. \lft{odiv, $\odiv$}    \ctr{ominus, $\ominus$}    \rt{otimes, $\otimes$}
  909. \lft{cdot, $\cdot$}    \ctr{union, $\union$}    \rt{inter, $\inter$}
  910. \lft{and, $\and$}    \ctr{or, $\or$}}
  911.  
  912. In addition to the binary operators, the following unary
  913. operators are avialable:{\fill 0\ss{}
  914.  
  915. \lft{partial, $\partial$}\ctr{surd, $\surd$}    \rt{int, $\int$}
  916. \lft{oint, $\oint$}    \ctr{sum, $\sum$}    \rt{prod, $\prod$}
  917. \lft{prime, $\prime$}}
  918.  
  919. There are also a several different flavors of arrows. Note that
  920. there is no right arrow as such. The arrows that are there
  921. are:{\fill 0\ss{}
  922.  
  923. \lft{up, $\up$}        \rt{bigup, $\bigup$}
  924. \lft{down, $\down$}    \rt{bigdown, $\bigdown$}
  925. \lft{left, $\left$}    \rt{bigleft, $\bigleft$}
  926. \lft{right,$\right$}    \rt{bigright, $\bigright$}}
  927.  
  928. The following miscellaneous math symbols can also be used:{\fill 0\ss{}
  929.  
  930. \lft{thereis, $\thereis$}\ctr{forall, $\forall$}\rt{therfor, $\therfor$}
  931. \lft{cdots, $\cdots$}    \ctr{cdotss, $\cdotss$}    \rt{nabla, $\nabla$}
  932. \lft{imag, $\imag$}    \ctr{natural, $\natural$}\rt{rat, $\rat$}
  933. \lft{real, $\real$}    \ctr{integer, $\integer$}\rt{complex, $\complex$}
  934. \lft{top, $\top$}    \ctr{bot, $\bot$}    \rt{aleph, $\aleph$}
  935. \lft{iit, $\iit$}    \ctr{jit, $\jit$}    \rt{angle, $\angle$}
  936. \lft{infty, $\infty$}    \ctr{emptyset, $\emptyset$}}
  937.  
  938. The following commands are useful as paired delimiters:{\fill 0\ss{}
  939.  
  940. \lft{lfloor, $\lfloor$}        \rt{rfloor, $\rfloor$}
  941. \lft{lceil, $\lceil$}        \rt{rceil, $\rceil$}
  942. \lft{langle, $\langle$}        \rt{rangle, $\rangle$}
  943. \lft{dleft, $\dleft$}        \rt{dright, $\dright$}}
  944.  
  945. There are many operators that appear in formulas that {\it should
  946. not} be set in the same face as the surrounding formula. These
  947. are usually set in the face of the surrounding text. tex provides
  948. the following such operators:{\fill 0\ss{}
  949.  
  950. \lft{cos, $\cos$}    \ctr{cot, $\cot$}    \rt{csc, $\csc$}
  951. \lft{sin, $\sin$}    \ctr{sec, $\sec$}    \rt{tan, $\tan$}
  952. \lft{exp, $\exp$}    \ctr{ln, $\ln$}        \rt{log, $\log$}
  953. \lft{lim, $\lim$}    \ctr{liminf, $\liminf$}    \rt{limsup, $\limsup$}
  954. \lft{min, $\min$}    \ctr{max, $\max$}    \rt{Pr, $\Pr$}
  955. \lft{sup, $\sup$}    \ctr{inf, $\inf$}    \rt{lg, $\lg$}
  956. \lft{det, $\det$}    \ctr{gcd, $\gcd$}    \rt{modop, $\modop$}}
  957.  
  958. There are three math mode commands that use arguments. These are
  959. the super and sub script command, and the modulo operator. The
  960. following table is similar to the preceding tables, except that
  961. the string used to generate the glyph is {\ss A\\?\{exg\},} where
  962. the {\ss ?} is the command entered in the table. {\fill 0\ss{}
  963.  
  964. \lft{mod, $A\mod{exg}$}    \ctr{+, $A\+{exg}$}    \rt{-, $A\-{exg}$}}
  965.  
  966. Finally, there is a collection of math mode commands to generate
  967. miscellaneous characters that are not associated with
  968. mathematics, but are generally useful. These are listed in the
  969. section on math mode, and repeated here for completeness.{\fill 0\ss{}
  970.  
  971. \lft{$\$$, $\$$}    \ctr{$\#$, $\#$}    \rt{dag, $\dag$}
  972. \lft{ddag, $\ddag$}    \ctr{ldots, $\ldots$}    \rt{ldotss, $\ldotss$}
  973. \lft{circ, $\circ$}    \ctr{bullet, $\bullet$}    \rt{copyright, $\copyright$}
  974. \lft{section, $\section$}}
  975.  
  976. \ctr{max, $\max$}